perm filename NSF.G[DOC,TOB]1 blob sn#044646 filedate 1973-05-22 generic text, type T, neo UTF8
00100			        ABSTRACT
00200	
00300	
00400	The Stanford Artificial Intelligence Laboratory proposes to undertake
00500	a  program in advanced automation over a period of one year at a cost
00600	of $200,000.  This  proposal  is  to  continue  and  extend  programs
00700	sponsored under ARPA Contract SD-183.
00800	
00900	The laboratory proposes a one year investigation in the area of
01000	computer integrated assembly systems.  This project unites
01100	two dominant forces in industrial automation:  computerization
01200	of manufacturing and programmable assembly automation.  The
01300	laboratory brings to the project experience in robotics research
01400	and an existing robot system which has performed a simple assembly
01500	task and which integrates simple touch and force sensing, and
01600	rudimentary visual skills.
01700	
01800	This one year proposal is intended to be part of a three or four
01900	year "proof of concept" effort.  The first year will be devoted
02000	to extending our capabilities, demonstrating them to industry and establishing
02100	collaboration with industrial firms.  This information will be used
02200	to shape the larger effort.
02300	
02400	Extensive industrial and governmental consultation has shaped the
02500	proposal.  Several industrial needs have emerged from studies
02600	now underway.  One is a widespread desire of major industries for
02700	programmable automation.  Another
02800	is the desire to cut costs by better overall organization and
02900	understanding of the manufacturing process, using computers as
03000	a tool for organization and information.
03100	
03200	The proposed project would:
03300	a) extend the capability of our existing robotic system by investigating the use of
03400	two arms in typical tasks, by improving touch and force sensing techniques and
03500	developing necessary software in carrying out assembly tasks.
03600	b) demonstrate the utility of the assembly system by performing
03700	assembly tasks of moderate complication and demonstrate that the
03800	system could be replicated at acceptable cost to industry by completing
03900	a stand-alone system on a minicomputer.
04000	c) attack the problem of interfacing programmable assembly devices
04100	to a computer-aided manufacturing system and the problem of programming
04200	general purpose devices for assembly tasks.  We will implement an example of
04300	an interactive robot programming system which will be an exercise for
04400	design of an APT-like programming system for assembly devices.
04500	
04600	
     

00100	I. THE NEED FOR ADVANCED AUTOMATION
00200	
00300	
00400	The  contributions  that  advanced  automation  can  make  to enhance
00500	productivity in manufacturing are  now  widely  appreciated.  Current
00600	interest  in  advanced  computer-oriented  automation  stems from two
00700	sources.  The first is the decreasing cost  of  computation  combined
00800	with an improved understanding of how to apply computation to various
00900	aspects of manufacturing. The second cause is  the  realization  that
01000	many   current   manufacturing  operations,  primarily  assembly  and
01100	inspection, will require complex automation  methods  which  are  now
01200	research  techniques. The same considerations apply to the automation
01300	of tasks such as laboratory and medical procedures, but the  emphasis
01400	has  been (as ours will be) on manufacturing. A recent ARPA-sponsored
01500	study [Anderson 1972] in which we participated suggests the following
01600	major benefits from advanced automation:
01700		improved national productivity
01800		reduced prices
01900		increased product quality and uniformity
02000		customization of products
02100		increased job satisfaction. 
02200	We would like to add just one comment. As we  have  seen  with  other
02300	technological  developments such as numerical-controlled tools, there
02400	will be things made which were previously impractical to make.  There
02500	is  widespread  agreement in the technical, industrial and government
02600	communities on the potential benefits of advanced  automation.  There
02700	is  much  less  agreement  on  the  level of sophistication needed in
02800	automation hardware and software. While there are  large  application
02900	areas  in  which  specially  constructed  machines  or simple general
03000	purpose  devices  will  prove  optimal,  we  believe  that  the  most
03100	practical  solution for intermediate quantities (500 to 100,000) will
03200	be  to  develop  general  purpose  assembly  and  inspection  devices
03300	controlled by sophisticated programs in digital computers.
03400	
03500	These conclusions are supported by our consultation with industrial
03600	management who have manufacturing responsibilities. Programmibility is
03700	necessary even in the automobile
03800	industry which has large volume, but essentially custom assembles
03900	each car.  This
04000	has been repeatedly emphasized in workshops.
04100	
04200	Another conclusion is that the process of improving the organization of
04300	manufacturing can make heavy use of computer systems.  Computer-aided
04400	design is already in heavy use in semiconductor industries, and making
04500	a beginning in other industries.  Inventory and parts tracking are
04600	important facilities in the aircraft industry.  Direct numerical control
04700	of several N/C machines by a central computer is also extensively used.
04800	Some effort has been directed in Europe towards the "group technology"
04900	approach of Opits, which attempts to emphasize commonality by using parts
05000	descriptions to group items which are alike.  Evolution of computer-aided
05100	manufacturing depends on integrating these facilities and bringing more
05200	facilities under effective control.
05300	
05400	These two systems, programmable automation and computer-aided manufacturing
05500	interact in a beneficial way.  An important part of the development process
05600	for programmable automation is the development of programming systems
05700	which actually program assembly devices.  Part of that can be done by
05800	"learning by doing".  However, many operations are only small modifications
05900	of other operations, so that it is desirable to be able to modify the
06000	assembly program instead of reprogramming entirely.  It would appear that
06100	most assembly operations could be strung together from modifications of modules
06200	from a library of standard assembly subroutines like inserting and
06300	screwing.  Inspection combined with assembly (which is made necessary for
06400	quality control and because of the implicit inspection in assembly operations)
06500	and error and contingency conditions lead to an assembly control structure
06600	like a conventional computer program.  
06700	
06800	The central computer will have parts designs
06900	and assembly operations.  Why should these not be used to supply information
07000	to assembly subroutines?  And should the designer have a system which
07100	allows him to design for automatic assembly by interacting with the
07200	system which programs the actual assembly device?  That would provide a
07300	useful experimental system for cost and design automation, in addition
07400	to shifting some of the responsibility for programming of assembly
07500	devices from production employees to professional staff with technical
07600	sophistication.  We emphasize the separation into an assembly system
07700	which could operate stand-alone, but is better interfaced with a
07800	central computer system, and the robot programming system which
07900	depends on more facilities but is used infrequently when jobs are
08000	changed.
08100	
08200	There is one further concept in common among presentations of automation.
08300	Automation must be incremental.  This is supported by numerous considerations:
08400	invested capital in existing plants, design costs for conversion, and the
08500	necessity for a sequence of understandable and predictably profitable steps
08600	along the path.
08700	
08800	We contend that inserting programmable assembly devices incrementally into
08900	existing factories or new factories with only slight modifications,
09000	demands more from the programmable device.  We see this process at work as
09100	industrial robots of the Unimate class slowly develop more facilities.
09200	The simple robot described in the ISI study [Anderson] does not exist
09300	yet; it must still be proven feasible by demonstration.  We outline below
09400	some arguments about cost and productivity factors which follow from
09500	programmable assembly.  These arguments follow from compatibility with
09600	current manufacturing design, from economies of scale, and from commonality
09700	of technology, and from desires for quality of product and predictability
09800	of the process.
09900	Several  studies  have  indicated some priorities among directions of
10000	automation. The ISI study [Anderson] indicates that less than 20%  of
10100	discrete  manufacturing  is amenable to special purpose automation. A
10200	Chrysler Corporation study indicates  that  car  assembly  labor  has
10300	first  priority  in automation; assembly plant direct labor is 40% of
10400	direct corporate labor. 
10500	The ISI study quotes a figure of 75% as the
10600	fraction of batch produced discrete manufactures. One  conclusion  is
10700	that  "the emphasis in development should be on simple vision devices
10800	and on low-bandwidth tactile and force sensing feedback". That  study
10900	indicates that the assembly process typically accounts for 50 percent
11000	of production cost.
11100	
11200	We assume that present manipulators have a small but  stable  market,
11300	and  that  most  will  have minicomputers soon (Sundstrand does now).
11400	Will the incremental cost of  touch,  force  and  visual  sensors  be
11500	offset  by  the  opening  of  new  capabilities, and will the cost be
11600	offset by reduced cost of system  design  for  machines  which  allow
11700	loose  alignment tolerances? We estimate that touch and force sensing
11800	will add about 5% to the price of current manipulators of the Unimate
11900	class.   We  estimate  that  by  1977, the incremental cost of visual
12000	sensors, a laser ranging device such as  we  use  now,and  additional
12100	memory  requirements,  will  add about 15%-20% to current manipulator
12200	prices. If labor costs continue to rise, part of the increase will be
12300	offset,  but  cost  comparisons will not change appreciably over that
12400	time scale unless significant new mechanical  designs  are  made.   A
12500	conclusion is that sensor-equipped robots will be available at slight
12600	additional cost. We will discuss the benefits of incremental  improvements
12700	to manipulators.
12800	
12900	We  do not expect mechanical production costs to drop as dramatically
13000	as electronics costs fall with integration. The most  promising  cost
13100	reduction  development would be high-production standard modules such
13200	as robots.  As an example, consider the  Stanford  arm;  produced  in
13300	unit   quantity,   parts,   manufacturing   and  assembly  costs  are
13400	approximately $10K. The arm is much simpler than an automobile; there
13500	is  no  reason why it should cost more. A smaller, more recent design
13600	costs $3500 each in quantities of two.
13700	
13800	At what cost are robots economically viable?  This varies enormously;
13900	if they are serving a large and expensive machine, the cost can be
14000	relatively high.
14100	Unimation now projects labor costs at $22,000 to $24,000 per man year
14200	averaged over the next 10 years, and assumes a payoff of 2 years for
14300	a projected acceptable cost level of $46,000.
14400	A robot with two arms, minicomputer control, force and touch  sensors
14500	could  be  constructed  for  under $10K in quantities of 1000 now. To
14600	summarize: two arms (new small Scheinman design) $2000 with hand; arm
14700	drivers  and  arm  interface electronics $1000; force and touch $800;
14800	small computer 8k  memory  $4500;  total  $8300.  Assuming  that  the
14900	computer  price falls to $1200 by 1978, this will at least compensate
15000	for inflation.  Of course,
15100	these are small arms, suited for parts assembly, not automotive  body
15200	assembly.   The  larger  arms,  assuming  slight  redesign  for  cost,
15300	would cost about $2500 in units of 1000, for  a  total
15400	system  cost (not price) of $12300. This is
15500	the range of price of present transfer machines  which  have  limited
15600	market  because  they  have  limited motion, no control, and are thus
15700	locked out of the economy of scale. There is a dynamic which leads to
15800	economy  of  scale;  the  greater  the  versatility, the wider is the
15900	market for applications. This will  be  true  particularly  in  small
16000	production  and  job  shop  operations  which  have been difficult to
16100	automate.  The larger the production, the more  versatility  for  the
16200	same  initial  cost  as  special  devices.   Also,  with high volume,
16300	standardization of maintenance, and availability of parts and service
16400	are improved. The quality of the device is also improved.
16500	
16600	The  economies of scale in production of assembly modules are matched
16700	by economies of intellectual  scale  in  development  of  design  for
16800	automation.    The   design   process   is   modularized  and  easily
16900	communicable; there is  a  common  discipline  which  can  be  widely
17000	absorbed; developments of many sources can be integrated. Programming
17100	and training done once for one machine  can  be  transferred  to  all
17200	machines  in  a  plant,  and  even transferred nationwide. Functional
17300	modularity has been emphasized in our studies. Modularity is  clearly
17400	possible  and  there  is  a  powerful  economic incentive to assemble
17500	widely varying systems from one, two, or three arm modules, force and
17600	touch   modules,  vision  and  ranging  modules,  with  planning  and
17700	monitoring modules. This would also entail software  modularity  with
17800	computer-aided  mechanical design and job specification for robots on
17900	a local or network time-sharing service.
18000	
18100	The alternative is special design for each operation. We expect  that
18200	at  some  point,  design  will be cheaper with standard robot modules
18300	than with special purpose designs, just as it is now more  economical
18400	to  use  mini-computer  controllers than special purpose controllers.
18500	Modularity has the  potential  to  reduce  design  time  and  improve
18600	predictability  of  design time and costs, permitting better planning
18700	and  response  to  competition.  To  some  extent,  the   dehumanized
18800	industrial  worker  now fills the role of standard module, so that we
18900	do not expect discontinuous change. The continuity  with  decades  of
19000	experience  with  design  for  human  versatility  in assembly can be
19100	relied upon;  robots  with  some  versatility,  sensing,  contingency
19200	actions,  and  dexterity  will  provide a transition to newer schemes
19300	which will evolve more slowly. Another advantage of  general  purpose
19400	techniques is the ease with which the size of the robot can be scaled
19500	up or down. There appears to be no difficulty in making very large or
19600	very small assembly stations which use essentially the same programs.
19700	
19800	Versatile  assembly  devices  have  an efficiency advantage in medium
19900	scale and job shop production; their utilization  efficiency  can  be
20000	higher  because  versatility  allows  a  variety  of operations to be
20100	scheduled  at  one  station.   The  availability  of  computers   for
20200	production  scheduling  will  allow  the  flexibility  to  be used to
20300	advantage. Robots would also have longer life over which to  amortize
20400	costs,  since  they  could  function  with greatly changed production
20500	operations, and evolve with new hardware and software  modules.  They
20600	would  have  higher  reliability,  since  they would have monitoring,
20700	contingency action, and error recovery. They would be  self-aligning,
20800	self-calibrating, and self-testing.
20900	
21000	With  simple  devices,  inspection  and  assembly  operations must be
21100	broken down into small operations with transfer  operations  between.
21200	This introduces extra transfer devices with orientation-preserving or
21300	re-orienting steps, and overlapping operations which can be  combined
21400	in  an  advanced  device. The extra cost of jigs and fixtures, and of
21500	stopping  assembly  lines  adds  to  the  cost  of  special   purpose
21600	automation.  Robots  can  cut  down  on  real  estate,  since several
21700	operations can be done at one station.
21800	
21900	Because of the adaptibility of work stations,
22000	production runs can be smaller,
22100	with less capital tied up in inventory and  unused  machines.   There
22200	can be better response to the needs of high technology industry which
22300	often requires  small  quantities.   There  has  been  difficulty  in
22400	meeting   the   tight   tolerances   necessary   for   operation   of
22500	non-intelligent devices.  It is hard to estimate the value of systems
22600	which work within current industrial tolerance, rather than requiring
22700	radical improvements in engineering  practice,  but  that  continuity
22800	does seem important.
22900	
23000	Serious issues arise in the development of robots with simple sensory
23100	systems. Some evaluation issues should be settled  by  demonstration,
23200	since  much  sharper  analyses  can  be made this way.
23300	
23400	There is already a significant degree of  industrial  involvement  in
23500	computer-aided  assembly.  GM  Research  Lab has demonstrated a wheel
23600	mounting operation using visual alignment.  IBM  has  a  small  robot
23700	project.  Hitachi  has  demonstrated  a robot with touch and a system
23800	with visual identification of objects on a conveyor belt, with visual
23900	control  of  manipulation.  Can  industry  be  expected to adequately
24000	support this development?  Development  of  primitive  robots  is  an
24100	evolutionary  process,  not  a single product development.
24200	 The area is too
24300	big; the payoffs are huge and the investment level  is  large.  Also,
24400	traditionally, industry has been dependent on suppliers. But with the
24500	exception of IBM, the suppliers are smaller and less able to risk the
24600	development.  Management  techniques  require  inordinate  return  on
24700	capital. An alternative support could come again from  the  military.
24800	The  ARPA study and the history of numerical controlled machine tools
24900	are  natural  consequences  of  the  vast  military  procurement   in
25000	technologically advanced products. In the case of N/C, funds could be
25100	diverted from an outmoded technology to development of devices  which
25200	were  essential  to  production  plans  for  the  future.  It is high
25300	technology products which are most competitive internationally in the
25400	civilian  economy.  The  record of government investment in numerical
25500	control, solid  state  electronics,  computers,  and  electro-optical
25600	devices has been very productive. However, in large scale development
25700	of civilian products and international markets,  foreign  governments
25800	have  taken  the  lead.  The  development of general purpose assembly
25900	devices will benefit manufacturers in a broad spectrum  of  industry,
26000	particularly  medium  scale  manufacturing. It is an appropriate area
26100	for governmental action to help meet a national need.
26200	
26300	Given sensor-equipped robots at little extra  cost over current senseless
26400	robots, they  will  have
26500	visual  ability  to  sense  color,  strong  contrasts  in brightness,
26600	recognize known objects from two dimensional outlines  (top  view  of
26700	flat  object) or three dimensionally using depth, to a certain extent
26800	they will be  able  to  recognize  three  dimensional  objects  using
26900	monocular  recognition.  They  will  be able to visually align mating
27000	parts  in  assembly  operations,  increase   reliability   by   self-
27100	calibration  and  flaw  and  disaster  detection,  and  permit  large
27200	tolerances in parts transfer, even permitting parts to be taken  from
27300	a  bin.   Several  of  these  abilities  are not yet available in the
27400	laboratory,  but  with  known  conditions  and  objects,   and   some
27500	engineering  (e.g.  color coding) are achievable within the time span
27600	of the proposed project.
27700	
27800	The major determinant of the economic impact of assembly robots  will
27900	be  the  extent  of their capabilities. Assessing and extending these
28000	capabilities is the principal goal of the proposed project.
28100	
     

00100	II. RESEARCH PLAN
00200	
00300		A. THE PILOT ASSEMBLY STATION
00400	
00500	A basic goal of the proposed project  is  to  extend our existing
00600	robot system, to specialize on assembly tasks, and meanwhile, to transfer
00700	the system to a standard minicomputer, in order to demonstrate
00800	its applicability to real
00900	problems. The project will be considered a success  if it has major
01000	impact on an industrial assembly system or
01100	or  if an enterprise chooses to manufacture and market
01200	the general purpose
01300	station.
01400	
01500	Our current robot system has one arm of our design, two TV cameras and
01600	a laser ranging system.  A variety of vision modules have been standardized,
01700	and a hand language (HAL) has been used for several tasks [Paul].  A demonstration
01800	of the robot's capabilities has been made by assembling a water pump, using
01900	vision, touch  and a tool.
02000	
02100	We propose to extend that system by:
02200	a) doing more assembly experiments to guide research in developing the
02300	hand language and manipulation techniques.
02400	b) design and implement visual operations especially for assembly, which
02500	would not be programmed in our general vision effort, again using assembly
02600	experiments to guide research.
02700	c) adding a second arm which is nearly completed, and improved touch and
02800	force sensing; extending the hand language to two arm operations.
02900	demonstrate practical speed and dexterity with two arms and tool using.
03000	d) after some progress with b, implementing a language which combines vision
03100	with the hand language.  show the commonality of operations among similar
03200	assembly tasks.
03300	
03400	Simultaneously, we would transfer our robot system to a minicomputer
03500	which we are acquiring.  One benefit of this transfer is for our own
03600	research.  Another is that we can show the relevance of our research to
03700	systems which are cost effective for industrial applications.  Yet another is
03800	that we can transfer our research results more directly to industrial
03900	observers and industrial laboratories.  In many cases, this can be
04000	direct transfer, since we have the beginning of a robotics user's group
04100	sharing the same minicomputer (GM research lab, 3M research lab, JPL, and
04200	Artificial Intelligence lab, MIT).  Also, our hand language, arm control
04300	and arm trajectory planning software are suitable for a variety of arms,
04400	including the Unimate.
04500	
04600	The result of this effort is a small system we call a pilot assembly
04700	station, based on a minicomputer.  Two related projects complement this
04800	proposed project.  These projects at SRI and MIT, Draper Lab have industrial
04900	participation to work with commercial manipulators of a type already in
05000	use in factories (Unimate).  They propose to develop systems which perform
05100	simple two dimensional inspection tasks and systems for manipulation at
05200	about our current level of dexterity.  With their industrial participation,
05300	and a commercial device, their impact may be short term.  Our project
05400	is longer term in that while we have those accomplishments in manipulation
05500	and assembly, we work with equipment which is not a commercial product,
05600	so that there may be a delay in converting our techniques to a commercial
05700	manipulation system, or marketing our manipulator. 
05800	  Finally, we
05900	are aiming toward a higher level of evolution, something like the
06000	simple robot described in the ISI report [Anderson].
06100	
06200	In one configuration, the assembly station is assumed to be connected
06300	to a large time-shared computer facility. Not only does  this  appear
06400	to  be a good design for our problem, but it is also necessary for an
06500	integrated  programmed  automation  facility.  The  only   emphasized
06600	statement  in  the ARPA study report [Anderson 1972] is: "The maximum
06700	impact  of  computers  in  manufacturing  will  come  from  complete,
06800	real-time  computer  cognizance  and  control  of  all  processes and
06900	resources, allowing the precise scheduling and  allocation  of  these
07000	resources."
07100	
07200	Each  assembly  station will consist of a small digital computer, one
07300	or more manipulators and cameras. Manipulators and  cameras  will  be
07400	combined  as  modules  in  systems  to suit a given task, and will be
07500	digitally controlled by the station computer.  The  station  computer
07600	may be connected to a central computer or may stand alone. The latter
07700	configuration is less efficient in  the  long  run,  but  allows  for
07800	incremental automation.
07900	
08000	The program in the station computer will be flexible as to the number
08100	and position of manipulators and cameras. It will control input  from
08200	the  cameras,  provide for some pre-processing of the picture and the
08300	application of simple tests to the  visual  data.   In  the  case  of
08400	manipulators  it will provide for simultaneous servo control. It will
08500	also process  other  inputs,  such  as  from  touch  sensors  on  the
08600	manipulators, photocell interrupt devices, limit switches, etc.
08700	Both analog and binary outputs will be available for the  control  of
08800	other devices.
08900	
09000	Each  station  computer will have access to a task program specifying
09100	the actions and tests it should perform to carry out its  task.  This
09200	task  program  will  be compiled by the central computer. Compilation
09300	will consist of the analysis of predicted scenes in order to  specify
09400	simple tests that the station computer can carry out, the calculation
09500	of collision free trajectories for the manipulators, the sequence  of
09600	operations  and  simple  contingency  plans. etc. We are planning for
09700	tasks  whose  normal  execution  does  not  require  detailed   scene
09800	analysis.  If  scene analysis becomes necessary (e.g. a dropped part)
09900	we envision the station sending an image to the central computer  for
10000	processing.
10100	
10200	The  central  computer will perform overall control of the individual
10300	assembly stations and the relative rates of  production.  If  at  any
10400	station  a  planned test fails, for which a contingency plan does not
10500	exist, or any unexpected sensor signals  are  received,  the  central
10600	computer  will  also be interrupted and appropriate actions taken. If
10700	the assembly station is not connected to a  central  computer,  these
10800	operations will require human intervention.
10900	
11000	
11100	Most of the hardware required  for  the  assembly  station  has  been
11200	developed  for  the  laboratory. 
11300	 The major additional problem is to  refine
11400	the   existing   designs   to  meet  the  demands  of  an  industrial
11500	environment.
11600	
11700	We are now acquiring a small computer, a  PDP-11,  and  will
11800	interface  the existing arms to it together with one or more cameras.
11900	A software package for the small computer will then be  developed  in
12000	order to control the manipulators, read the TV cameras and to perform
12100	low level visual analysis. Programs  to  plan  tasks,  calibrate  the
12200	system  and  to  perform higher level visual analysis, error recovery
12300	and strategy planning will be written in a high  level  language  for
12400	the time-sharing processor.
12500	
12600	The most difficult part of the assembly station, and the heart of the
12700	project is a demonstration of the feasibility of the station. We plan
12800	to do this by developing programs which actually assemble and inspect
12900	a variety of fairly complex manufactured items.
13000	
13100	Our first task was assembly of an automobile water pump.  A film shows
13200	the process in detail.  The assembly consists of four sets of operations:
13300	Visually locating the pump body to move it to standard position;
13400	inserting guide pins and the gasket, then visually verifying that the
13500	gasket is in place; picking up the pump head (at an approximate standard
13600	position) and placing it over the guide pins; using a tool to pick up
13700	screws from a feeder and insert them, by searching near the hole if
13800	necessary.  Tools, vision, touch and force feedback were used.
13900	The assembly was at approximately human speed, but not as fast as
14000	a practiced worker.  The reliability is relatively high.  Assembly
14100	was programmed in the hand language, with a small program, in terms
14200	of macros like "insert a screw".  Visual operations were special case
14300	programs.  A major part of the development of the pump assembly was
14400	implementing tools and  finding manufacturing
14500	engineering techniques.  Speed and reliability in repetitive tasks
14600	could be increased by using errors found in searching to insert screws
14700	to update target positions for screw insertion, etc., so that these
14800	operations were almost always immediately successful.
14900	
15000	As  we move to more difficult tasks, the sophistication required goes
15100	up quite rapidly.  The  current  manipulation  routines  seem  to  be
15200	expandable  to cover anticipated problems, especially since we intend
15300	to employ special purpose manipulators (tools) for  some  tasks.  A
15400	major part of our effort will be vision for assembly; an assembly task
15500	will be performed using vision, touch, and  two  hands.   The  vision
15600	effort  will  be  integrated with other abilities, and while no great
15700	generality will be stressed, new modules will  be  incorporated  into
15800	the  system,  and  a set of techniques will evolve. These will depend
15900	heavily on techniques similar to  those  of  our  recent  studies  in
16000	visual  feedback  and hand/eye coordination [Gill 1972]. The internal
16100	model of the world will be  used  to  predict  visual  appearance  of
16200	selected  areas  of  the  scene, and a set of verification procedures
16300	will confirm or contradict the predictions. Many  of  the  operations
16400	will  be  connected  with  supplying  feedback  to  manipulation, for
16500	alignment and insertion. These visual procedures will have models for
16600	the parts and approximate locations.
16700	
16800	This and other visual tasks connected with assembly will initially be
16900	performed as special  case  problems.  In  addition,  to  make  these
17000	techniques   available,   we  will  pursue  development  of  strategy
17100	programs. This step is essential if intelligent assembly devices  are
17200	to  be conveniently programmed for complex tasks. Within the division
17300	of labor between large and small machines, this facility resides
17400	in  the  central  time-sharing  facility which has large memory, file
17500	storage, and problem-solving languages. The system must have a  model
17600	of  the  parts  for  assembly,and  a  sequence  of  instructions  for
17700	assembly. It will be necessary to have a representation of shape  and
17800	models for usual assembly operations such as insertion and alignment,
17900	and the ability to solve simple problems  in  connection  with  these
18000	operations,  all  this  to  enable  convenient communication with the
18100	user. When these facilities exist, the addition of new  features  and
18200	operations  can be incorporated smoothly, so that users can call on a
18300	growing library of planning modules. The result of a planning  effort
18400	is  a  cycle  of  machine  planning and man-machine interaction which
18500	results in a plan  network  for  the  mini  computer  which  controls
18600	individual machines.
18700	
     

00100	PROGRAMMING ASSEMBLY DEVICES AND INTERFACING WITH THE CENTRAL
00200	FACTORY SYSTEM
00300	
00400	
00500	The second part of the proposed project is to design and
00600	implement an initial version of an interactive system for
00700	programming assembly devices and interfacing with a central
00800	factory computer system.  
00900	
01000	The most obvious form of programming robots is that in use
01100	with current industrial robots, "learning by doing".  The
01200	robot is led to end points of a trajectory or along a path
01300	by an operator.  We are able to do that already; positions
01400	for the pump assembly were specified  in just
01500	that way.  The process could be improved by better 
01600	teleoperator control, for example the resolved rate control
01700	system at MIT.
01800	
01900	Those techniques are quite limited, however.  They are
02000	limited to tasks with positional control only.  Where 
02100	force control is necessary, the control program must know in what
02200	way to control forces, i.e. what forces to exert or null along
02300	what direction vector.  For example, in inserting a rod into
02400	a hole, transverse forces should be nulled.  Such tasks require
02500	specifying a trajectory with additional symbolic force control
02600	information.   Since arm control will be primarily based on minicomputers
02700	in new designs, a natural mode to accomplish this partially
02800	symbolic programming is with an interactive program,
02900	which can be small.
03000	
03100	For any task involving a sequence of such
03200	operations, the interactive system allows the operator
03300	to choose from a menu of operations and proceed step by step
03400	to assemble a sequence of these operations which have been 
03500	verified.  Checking the success of these operations could use
03600	simulation if necessary to avoid tying up a production machine.
03700	Useful modules like inserting a screw would be saved as macros
03800	so that subsequent programming sessions would be much simplified,
03900	dealing with combinations of such high level modules.  The
04000	macros can have arguments, so that one basic operation
04100	can be used in a variety of situations, and further, our software
04200	allows modifying trajectories so that a
04300	planned trajectory allows considerable variation
04400	in execution, without replanning.  We have built and used
04500	such an interactive system for the hand.
04600	
04700	Current work is involved with extending the  hand progrmamming
04800	language to include more than one arm. Problems of synchronization
04900	and coordinated motion will be provided for.
05000	
05100	Later this work will become the output language for a higher
05200	level processor, in which tasks such as inserting  testing and mating
05300	will be expressible in a simple and direct manner.
05400	
05500	As visual feedback is included, the human operator must be
05600	able to interact with the visual system through a graphics
05700	console.  These are becoming inexpensive, but it is 
05800	a resources shared among many assembly stations.  Unlike the
05900	hand language, no interactive visual system exists.
06000	We must emphasize that development of the language is not
06100	primarily a language effort, nor is it a statistical learning
06200	system.  Rather, we plan that it resemble the hand language, i.e.
06300	embedding the useful set of visual operators in a convenient
06400	interactive system.  During the early stages of the effort, the
06500	language will be at a low level, with macros, much as the
06600	hand language is now.  That early emphasis will be on 
06700	building a trial system based on a lot of experiments
06800	done as special cases.  This can be regarded as an
06900	extended learning by doing.  Meanwhile, our present
07000	efforts on representation of objects will evolve to a state
07100	at which the modelling of objects is integrated with
07200	our graphics capabilities to begin to automate some of the
07300	programming of feedback operations, that is to allow programming
07400	at a higher level.
07500	It is at this level that a
07600	non-technical worker might accomplsh the programming of visual
07700	feedback tasks.  
07800	
07900	We will meanwhile work on development of strategies for
08000	assembly.  The goal is to produce a language at about
08100	the level of an instruction manual:  put the cover
08200	(part a) on the opening of part b.
08500	At such a level, the system begins to be applicable to design
08600	for automation.  The designer can use the system to simulate
08700	the assembly process and modify designs which are marginal for
08800	automatic assembly.   He will have an assembly program as
08900	part of the design.  Thus, a large part of programming for
09000	assembly may in fact be done by designers.
09200	
09300	Several factors may decrease the burden of programming
09400	robots for production line personnel:
09500		libraries of operations-fastening, inserting, etc.
09600	
09700		interactive systems which do bookkeeping and
09800		prompt the human operator- an extended sort
09900		of learning by doing
10000	
10100		programming by designers.
10200	
10300	The process of building the APT-like language
10400	for assembly should be based on design, not on just random accretion,
10500	and should be based on computer science inputs, to avoid
10600	forseeable and unnecessary limitations on syntax and
10700	implementation.  It should be based on a wider perspective than
10800	just one industry or the market strategy of a dominant computer
10900	company.  With APT, the language was developed with air
11000	frames in mind, and has been clumsy in other
11100	applications.  Further, the development should be based on
11200	extensive experience, which can be obtained sooner in
11300	a research environment where a variety of tasks and skills can
11400	be investigated.
11500	
     

00100		B.  RESEARCH  IN  VISION  
00200	
00300	Research in computer vision has progressed so that the larger part of
00400	our  effort is directed toward vision in real scenes. We outline past
00500	research, including work on visual feedback,  development  of  useful
00600	modules,  analysis  of  some outdoor scenes, interpretation of scenes
00700	with curved objects, and a study of sensor systems.
00800	
00900	Our  past  work on visual feedback [Gill 1972] in stacking blocks and
01000	inserting objects  in  holes  is  directly  relevant  to  vision  for
01100	assembly.  The  issues  involved  are:  coordinating  hand  and  eye,
01200	utilizing incremental accuracy of vision and  manipulation,  accurate
01300	prediction  to  limit  search,  and  limiting accumulation of errors.
01400	Visual guidance in picking  up  objects  and  stacking  or  inserting
01500	objects  overcomes  errors  in the visual and arm coordinate systems,
01600	and errors in correspondence between the two coordinate systems. This
01700	was  done under realistic conditions, with the hand still holding the
01800	object and in view; the system predicts the appearance of  edges  and
01900	corners  within  a  small  window around the edges to be aligned, and
02000	uses a corner/edge finder to determine alignment error. The arm makes
02100	accurate  incremental  error  correction.  If predictions can be made
02200	accurately, the search window can be small, which increases the speed
02300	of  response  and decreases possibility of confusion with other areas
02400	of the scene. A major limitation to accuracy of  prediction  (and  to
02500	long-term  reliability  in  the  industrial  environment) is drift of
02600	calibration.  That  work   incorporates   calibration   updating   by
02700	self-calibration  to  coordinate  hand and eye coordinate systems and
02800	provide for reliability, as well as to  limit  search  by  accurately
02900	predicting  expected  features. Visual feedback with stereo vision is
03000	much more powerful than without; we have demonstrated  stereo  visual
03100	feedback in a program [Binford unpublished].
03200	
03300	We  have  a  set of visual modules to be used in a goal-directed way.
03400	These modules  answer  questions  which  arise  in  practical  visual
03500	feedback  tasks,  and  in analysis of outdoor scenes. Are there color
03600	edges in a selected window? Are there edges in  brightness?  What  is
03700	the  color  of  the  region  in the window? Several preliminary color
03800	region analysis programs have been developed  [Binford,  unpublished,
03900	Bajcsy  1972].  An  edge  operator  [Hueckel 1969] and a region-based
04000	corner/edge finder [Gill 1972] both operate on small windows  of  the
04100	scene,  as  directed  by  a higher level. An edge verifier is used to
04200	confirm or reject edges  predicted  from  context  [Tenenbaum  1970].
04300	Color  identification has long been demonstrated. Recently, a program
04400	has been implemented [Thomas unpublished]  based  on  Land's  Retinex
04500	model  of  color  constancy in vision, which defines a color triangle
04600	from  ordering  of  brightnesses.  The  center  of  the  triangle  is
04700	designated  as  white. The program shows a color constancy similar to
04800	humans; table top scenes are assigned colors reasonably well under  a
04900	variety  of  lighting  with different spectra: sunlight, flourescent,
05000	and incandescent.
05100	
05200	Understanding outdoor  scenes  is  a  more  complex  task  than  many
05300	industrial  visual  operations,  but  it  has  utility  for planetary
05400	exploration; it is also  a  useful  exercise  for  developing  color,
05500	texture, and stereo operations. Bajcsy analyzed outdoor scenes with a
05600	combination of color and texture region analysis [Bajcsy 1972]; depth
05700	cues  were taken from the gradient of texture. An attempt was made to
05800	obtain  consistent  interpretations  by  making   three   dimensional
05900	interpretations, and confirming boundaries by independent properties.
06000	Natural objects and natural scenes have been used for our  work  with
06100	motion    parallax    [Nevatia    in   draft]   and   stereo   vision
06200	[Quam,Hannah].These are complementary techniques of depth  perception
06300	which  are applicable for planetary exploration and industrial tasks.
06400	Motion  parallax  can  be  used  for  planning  of   navigation   and
06500	characterizing  large scale terrain features, since it provides large
06600	baselines.
06700	
06800	Another aspect  of  vision  with  direct  application  to  industrial
06900	environments  is  explored  in  our  work with curved objects. Current
07000	programs use depth information to make useful descriptions of objects
07100	like  a  doll,  a toy horse, a snake, or a glove [Agin]. Programs can
07200	segment these objects into parts like legs, arms or fingers, and link
07300	these   parts   together  to  form  descriptions  of  entire  objects
07400	[Nevatia]. These operations are precursors to a recognition  process.
07500	The  work  depends on a new representation of shape [Binford 1971] in
07600	terms of volume components and a part/whole  segmentation.  Primitive
07700	parts  are  described  by  an axis which is a space curve, and normal
07800	cross sections along the axis.  The  representation  is  based  on  a
07900	formalism,   "generalized   translational   invariance".   There  are
08000	significant theoretical reasons why this representation  leads  to  a
08100	natural choice of parts by simple procedures, in distinction to other
08200	suggested  representations.  We  developed  a  laser  ranging  device
08300	[Binford  1970,Agin]  which  was  operational  two  years  ago. It is
08400	particularly interesting that the device adds a cost  of  only  about
08500	$400 to the cost of a visual system.
08600	
08700	A study of visual and depth ranging sensors has been carried out which
08800	provides a background for choosing sensors and interface, and  making
08900	cost  estimates  [Binford  1972, Earnest 1967].  We have maintained a
09000	calibrated hand and vision system for several years [Sobel 1970], and
09100	have  developed  self-calibration  techniques  with  one and two eyes
09200	[Yakimovsky unpublished, Hannah 1972, Gill 1972].
09300	
09400	A system for understanding scenes of blocks  from  single  views  has
09500	been  implemented  [Falk  1970]; it segments objects, matches against
09600	internal  models,  predicts  appearance  from  its  assumptions,  and
09700	searches  for  verification  and contradiction based on the predicted
09800	image. Support and spatial relations are  also  obtained.  There  has
09900	been  past  work  on  programs  to  obtain  line drawings as input to
10000	recognition systems. An earlier system was based on  limited  context
10100	of expecting continuation of edges at vertices and predicting missing
10200	edges in certain expected configurations [Grape 1970]. A more  recent
10300	approach has been to use models within the process of generating line
10400	drawings, so that the most efficient  next  guess  can  be  made  and
10500	context used intrinsically in the formation of line drawings [Grape 1973].
10600	
10700	VISION FOR ASSEMBLY
10800	
10900	This  is  a  key part of the proposed project. We propose to evaluate
11000	and implement visual facilities  required  by  a  robot  with  simple
11100	vision, in conjunction with force and touch. These facilities must be
11200	modularized by working out several examples, and made fast enough and
11300	small  enough to be practical for a minicomputer-based robot. We have
11400	considerable experience with such standardization,  and  with  visual
11500	feedback  techniques  in  the domain of blocks. We are now at work on
11600	extending visual feedback techniques to typical  assembly  tasks.  We
11700	are  also  evaluating  methods of automating visual feedback. We have
11800	well-developed systems for modeling objects from the console  and  to
11900	predict  their  appearance  using  techniques  from computer graphics
12000	[Baumgart 1972a,b]. We can predict curved edges from our  models.  We
12100	will use simple region analysis programs and edge operators to locate
12200	curved edges  predicted  within  a  small  window.  Automated  visual
12300	feedback   would  combine  with  evolving  strategy  programs  in  an
12400	interactive system.  We  will
12500	maintain a calibrated system and improve calibration updating so that
12600	reliability is maintained at a high level.
12700	
12800	We have developed a special case program for locating the  pump  body
12900	in  the  pump assembly and moving it to the standard location. We are
13000	at work on several other such tasks involved  in  the  pump  assembly
13100	which  contain  components  of  general  utility for visual feedback.
13200	These tasks are typical of the simple visual operations which we will
13300	implement or adapt.
13400	
13500	VISION RESEARCH
13600	
13700	While  continuing  research activities are not to be supported by the
13800	proposed project, in all likelihood, the research will suggest useful
13900	programs for the assembly system, particularly work in recognition of
14000	complex objects using depth data.   The  computer  now  has  symbolic
14100	internal  models  of  objects.  We are now in a position to recognize
14200	objects such as a glove, a hammer, etc.   We  will  immediately  deal
14300	with matching descriptions for recognition.  The important extensions
14400	we wish to deal with are occlusion  and  access  to  a  large  visual
14500	memory.   These  will  involve  matching  of partial descriptions and
14600	encoding of partial descriptions as  indices  to  a  small  class  of
14700	similar  shapes,  which  can then be compared in more detail.  We are
14800	working toward making the hardware stable enough that it can maintain
14900	calibration,  and  software streamlined so that the depth measurement
15000	system can be integrated with other hand/eye facilities.   We  intend
15100	to  apply large parts of our programs for description and recognition
15200	of curved objects using only monocular intensity information. This is
15300	a  much harder problem, but within our representation, shares much of
15400	the same code, and relies on  the  same  conceptual  basis  of  local
15500	three-dimensional models.
15600	
15700	
15800	There is a growing  effort  on  navigation  of  vehicles  in  outdoor
15900	scenes.  While  this  is  not  directly  relevant  to  the industrial
16000	environment, it does  reflect  the  growing  involvement  in  complex
16100	visual  tasks,  and will lead to further development of an integrated
16200	visual system. One approach which has already given  initial  results
16300	[Yakimovsky] is to combine region growing with interpretation using a
16400	world model.  Thus, regions are combined not simply on the  basis  of
16500	uniformity but because combining them improves the interpretation. At
16600	the same time, we will be combining more facilities into these visual
16700	systems, and more usable knowledge in the world model.
16800	
16900		C. MANIPULATOR DEVELOPMENT
17000	
17100	Manipulator research began at the  Stanford  Artificial  Intelligence
17200	Laboratory  in  1965  with  the acquisition of a Rancho Orthotic Arm.
17300	This arm was interfaced in such a way that the  computer  could  read
17400	the  joint  positions by means of potentiometers and drive the arm by
17500	means of a voltage, pulse rate modulated signal for each  joint.  Two
17600	solution   programs   were  written:  one  to  give  the  rectangular
17700	coordinate position of the hand knowing the six joint angles, and one
17800	to  give  the  joint  angles  knowing  the desired x,y,z position and
17900	orientation of the hand. These programs were  then  combined  with  a
18000	servo program to move the hand.
18100	
18200	The  servo  program  represents  two  key  concepts of all subsequent
18300	manipulator research at this laboratory:
18400	1)  To  provide a digital computer with all sensory inputs, initially
18500	joint positions, but later velocity, force and touch measurements.
18600	2)  The  utilization  of  a  programable digital computer to take the
18700	sensory  inputs  and  to  provide  basic  control   output   to   the
18800	manipulator, in our case joint torque.
18900	Initially the sensory input of joint angles was to provide a position
19000	servo  with  a sampling rate of 60 cycles per second. The arm control
19100	has been changed many times since, a simple task in  the  case  of  a
19200	program,  but difficult in the case of a hard wire servo system. This
19300	system was used by Wichman, Pingle and Singer in 1968  to  provide  a
19400	program  which  could  pick-up,  sort and stack blocks, and in a first
19500	attempt at visual feedback.
19600	
19700	At  this  time  Piper  considered  the kinematics of manipulators and
19800	developed a classification scheme for all  possible  arms  and  their
19900	analytic  solvability.  He  concluded  his  work  by  implementing  a
20000	trajectory based collision avoiding program. Although slow, this work
20100	demonstrated the need for trajectory control of the arm.
20200	
20300	Kahn  followed Piper with a study of the dynamics of manipulators and
20400	developed a "bang-bang" servo for a  new  hydraulic  arm.  This  arm,
20500	still  at  the  laboratory,  was  developed  as  a  high  performance
20600	manipulator.
20700	
20800	By 1970 a general purpose program capable of manipulating plane faced
20900	bodies  was implemented. This program was used in the initial version
21000	of the "Instant Insanity" program where all  possible  reorientations
21100	of the four colored cubes were required in the puzzle solution.
21200	
21300	Our  present arm, the result of a continuing design project, replaced
21400	the Rancho Arm in 1970. This arm, like its predecessor is  controlled
21500	by a digital servo program running under the time sharing system. The
21600	new arm was used in the "Instant Insanity" demonstration in 1971.
21700	
21800	As this arm is driven by electric motors through high efficiency gear
21900	reductions it is possible to predict the torque exerted at each joint
22000	in terms of drive level. Based on kinematic analysis it  is  possible
22100	to  calculate the joint torques necessary to produce a given force at
22200	the hand. Further, for the hand to  exhibit  degrees  of  freedom  of
22300	motion, various joints are selected to be "free," that is, to have no
22400	position feedback applied to them. By exerting a force  at  the  hand
22500	and providing that certain degrees of freedom exist it is possible to
22600	perform a much wider class of tasks than simple  positional  control,
22700	for  instance  screwing  in screws, mating parts, inserting tools and
22800	turning cranks.
22900	
23000	Positional  accuracy  at  the  hand  is  typically  0.1  inches  with
23100	repeatability  of 0.02 inches. Force control at the hand is within 10
23200	ounces. The data rate to run the arm from an assembled arm program is
23300	of the order of 100 bits/second.
23400	
23500	Touch  sensors on the fingers allow the hand to sense objects without
23600	disturbing them. When activated the arm will stop  when  any  of  the
23700	sensors  touch.  Branching arm instructions can test the state of the
23800	sensors and modify the execution of an arm program. When  screwing  a
23900	nut  onto  a  bolt, for instance, the hand is first centered over the
24000	bolt by touching it.
24100	
24200	A  second  arm  of  the  same type, with only minor modifications, is
24300	currently being interfaced to the computer. Both arms  will  share  a
24400	common  work  space  and  will  be  able  to be used individually, or
24500	together for two-handed tasks. This should increase the scope of  our
24600	manipulation work by some orders of magnitude. It may be possible for
24700	many assembly workers to work with their eyes closed but it would not
24800	be possible, in most cases, to work with only one arm.
24900	
25000	Control   of  the  arms  is  achieved  by  a  series  of  high  level
25100	instructions; these instructions may be executed directly, or may  be
25200	assembled  together  into  an  arm  program. Arm programs may then be
25300	executed,  as  desired,  by  the   control   program.   The   control
25400	instructions  may  be  accessed directly by other programs, using the
25500	message procedure mechanism, or in the  form  of  a  symbolic  source
25600	file.
25700	
25800	Manipulator research moves  ahead  simultaneously  on  three  fronts:
25900	control,  primitives  and  devices.  Tasks  are  translated  into  an
26000	existing hand language and where the task cannot be  accomplished  in
26100	terms  of  existing  primitives,  new  primitives are formulated in a
26200	consistent manner. When a new  primitive  is  formulated,  real  time
26300	routines  are  developed  to  perform the action. This also leads, in
26400	many  cases,  to  the  development  of  new  hardware.  Also  as  new
26500	developments  occur  in  hardware design, existing real time routines
26600	are either re-written or modified.
26700	
26800	Research  is  now  concentrating  on  the following areas: To provide
26900	strain gauge instrumentation of the wrist, in order to allow for more
27000	sensitive  interaction  of  the  hand with a task. The development of
27100	high resolution, high sensitivity touch sensors, to increase  tactile
27200	recognition  and  control  abilities. These developments will lead in
27300	turn to new control concepts.
27400	
27500	Development  of  tools  for the hand. These tools can be instrumented
27600	such that the computer can feel and or see at the end  of  the  tool.
27700	This  should  be  a very important area of research as it goes beyond
27800	present human capabilities.
27900	
28000	Two handed arm control, the planning and execution of tasks requiring
28100	the coordinated motion of both arms, will require an extension of the
28200	existing  servo program and the analysis of synchronization problems.
28300	The development of collision avoiders, so that arms will not  collide
28400	with other objects and with each other.
28500	
28600	Modification of  the  existing  arm  design  to  provide  for  better
28700	incremental motions, more degrees of freedom and a more rugged design
28800	suitable for industrial use. Development  of  arm  and  eye  computer
28900	interfaces.  These contain synchronized analog/digital converters for
29000	input and current controlled drivers for output.
29100	
29200	The  development  of  new hands is expected as more complex tasks are
29300	attempted. At present, with only one hand, we  have  been  performing
29400	the  positioning  type  of  hand  actions.  When  the  second  arm is
29500	operational we will be able to perform holding and pulling actions as
29600	well.
29700	
29800	
29900		D.  SYSTEM REQUIREMENTS FOR ADVANCED AUTOMATION
30000	
30100	A  key  element in the development of any large programming effort is
30200	the software support.  There has been continual  effort  along  these
30300	lines  at  the  Stanford  Artificial Intelligence Laboratory and many
30400	useful ideas have been developed.  We propose to extend the  research
30500	along  two  separate lines:  support for research and system software
30600	for operating automated systems.  We will briefly describe  our  past
30700	efforts in this area and what we propose to undertake.
30800	
30900	The  Stanford  Artificial  Intelligence  Laboratory  has pioneered in
31000	several areas of system programming, including  timesharing  systems,
31100	interactive graphics, and programming languages.
31200	
31300	A  great  deal  of  additional effort has gone into direct support of
31400	hand-eye research.   Very early, we established  a  set  of  standard
31500	formats  and  library routines [Pingle 72a].  A programming language,
31600	SAIL[Swinehart], was implemented in 1968.  The language  incorporates
31700	special   features  for  large  real-world-oriented  problem  solving
31800	systems  and  is  currently  in  use  at  a  number   of   Artificial
31900	Intelligence and other laboratories.
32000	
32100	As  we began to assemble larger and more sophisticated collections of
32200	programs, we felt a need  for  flexible  mechanisms  for  cooperating
32300	sequential  processes.   The  resulting monitor and language features
32400	[Feldman & Sproull 1971] have  worked  well  for  us  and  have  been
32500	influential   on  other  projects.     Recently,  we  have  added  an
32600	additional set of features to SAIL  to  facilitate  non-deterministic
32700	and  event-directed  programming[Feldman 1972].   The early reactions
32800	to this work, both within the laboratory and without  have  been  very
32900	encouraging.
33000	
33100	We  expect  relatively  little  work  to be needed on further systems
33200	support for basic research.   There will undoubtedly  be  efforts  to
33300	take  advantage of new hardware and of new programming ideas that may
33400	develop in the course of this program.    Almost  all  of  this  work
33500	should be covered by other funding.
33600	
33700	The  development  of  software  for the assembly station will require
33800	more  of  our  effort.    The  central-local  computer  configuration
33900	requires  code to be resident in the local computer and in the shared
34000	machine.    The low level programs in the local machine will  not  be
34100	modified  often,  thus  we can assume that a compiler resident in the
34200	central machine will suffice.   The  planning  programs  and  general
34300	vision programs will be resident in the shared system.  There are two
34400	possible configurations for the shared computer system:     A  PDP-10
34500	equivalent  machine  or a software package in ASA Standard Fortran IV
34600	which will run on any sufficiently large machine.    One of the tasks
34700	under this proposal would be to evaluate these two alternatives.
34800	
34900	A major share of the programming research effort will be concentrated
35000	on developing a programming system for automated assembly.  This will
35100	combine  ideas  from  our  past  work  on  languages, representation,
35200	computer graphics and arm control.  We view this task as a branch  of
35300	the  larger  effort on automatic programming being undertaken in this
35400	laboratory and elsewhere.
35500	
     

00100			TIMETABLE
00200	
00300	
00400	
00500	
00600	The full program is designed for a four year period, including the
00700	initial one year program proposed here.  We will set up the timetable
00800	only for the one year grant period.  During that period we will accomplish
00900	the following:
01000	
01100		interface the second arm and develop two arm software;
01200	
01300		transfer arm software and hardware to the PDP-11;
01400	
01500		interface improved touch and force feedback for the arms;
01600	
01700		extend our library of vision primitives and perform several
01800		visual feedback experiments to test their utility;
01900	
02000		begin the vision language;
02100	
02200		perform an assembly task (possibly assembly of a 
02300		two stroke engine) to aid in development of our system;
02400	
02500	
02600	
02700	For the following timetable, we assume the project to begin in September,
02800	1973. 
02900	
03000	
03100	Month
03200	1 begin transferring arm hardware to PDP-11; begin development of new
03300		visual feedback modules;
03400	2 Second arm operational; begin on two arm software
03500	3
03600	4 use of visual feedback for inserting screws into holes
03700	5
03800	6  force sensing wrist operational; two arm software initially usable
03900	7
04000	8  system software for minicomputer usable;
04100	   begin combining vision with hand language
04200	9
04300	10 completion of transfer of arm control software to PDP-11
04400	11 completion of demonstration of assembly task
04500	12 improved touch sensing
     

00100	III. UTILIZATION PLAN-DISSEMINATION  OF  RESULTS  AND  RELATION  WITH
00200	INDUSTRY
00300	
00400	
00500	There are several other efforts, at varying levels of sophistication,
00600	in the area of computer controlled advanced automation.  The Stanford
00700	Artificial Intelligence Laboratory is the oldest and largest of these
00800	and  has  provided  the  cutting  edge  of much of he development. We
00900	intend to continue this role and to lead  in  the  development  of  a
01000	practical   general   purpose  assembly  system  and  the  associated
01100	software.
01200	
01300	All of the discoveries made under this grant will, of course, be made
01400	public.    We view our role in information transfer in a much broader
01500	way.  Having no desire to sell products and services and  no  clients
01600	with   interests  to  protect,  a  university  laboratory  should  be
01700	primarily a place for acquiring and spreading knowledge.
01800	
01900	The Stanford Artificial Intelligence Laboratory has always considered
02000	information transfer to be one of its primary goals.  In addition, to
02100	our published papers and reports, we  have  made  a  number  of  film
02200	reports  which  have  been  extensively  circulated.  There have been
02300	thousands of visitors, ranging  from  elementary  school  classes  to
02400	major  scientific,  governmental  and  industrial  missions from many
02500	countries. We have also encouraged extended visits  by  workers  from
02600	other laboratories and from industry. Members of the laboratory staff
02700	have played a major role in the organization of journals, conferences
02800	and  seminars  in  artificial  intelligence.  Many of our algorithms,
02900	systems, and hardware designs have been adopted by other groups.
03000	Our students are an important contribution to information transfer.
03100	
03200	We have close contacts with SRI (several former students are employed
03300	there) and with Draper Lab, MIT.  These laboratories, with industrial
03400	participants in their research programs, provide the right setting for
03500	transfer to industry.
03700	 We have close
03800	contact with the computer science group at GM Research Labs.
03900	
04000	A development of consierable interest is that five groups doing similar 
04100	research have chosen the PDP-11 as a research minicomputer.  We will have immediate relevance to members of this
04200	informal robot user's group.  Our programs will be usable by members and any
04300	others who acquire the PDP-11.  It would be advantageous for future
04400	purchases of minicomputers for automation research, that they be compatible
04500	with this group.  Our efforts are exportable in a further sense; the arm servo and planning
04600	programs are applicable to a wide range of arms, to the Unimate in
04700	particular.
04800	
04900	The  success  of  the  program  proposed  here  depends  heavily   on
05000	interaction  with  industry.   We will need additional information on
05100	the opportunities for automation and will try to involve manfacturers
05200	in  the  development  of  the  pilot assembly station.   We have good
05300	working relationships with a number of firms and  we  expect  that  a
05400	concrete project will help forge the bonds necessary for the transfer
05500	of advanced automation technology from the laboratory.
05600	During the initial proposed grant period, we intend to negotiate
05700	a cooperative relation with one or more firms.
05800	
05900	One promising approach to technology transfer is a  staff  associates
06000	program.   This  involves residence of about a year's duration at the
06100	laboratory by  industrial  scientists.    Such  a  program  was  used
06200	successfully at the MIT, Electronic's Research Laboratory in the area
06300	of programming systems for numerically controlled  tools  and  design
06400	automation.    We  have initiated a similar program in the laboratory
06500	(cf Appendix A) and are pursuing additional forms of cooperation.
     

00100				Appendix A
00200	
00300		The  Stanford  A.I.  Lab  has  been  engaged  in  research on
00400	advanced automation technology.  Our work has progressed to the stage
00500	where  we  are  seriously  engaged  in  developing  and disseminating
00600	practical applications.   To do this effectively, we  will  need  the
00700	help  of industrial organizations with computer sophistication and an
00800	understanding of practical problems.  One form of  cooperation  which
00900	we  are  engaged in is a staff associates program.  A staff associate
01000	is a member of another organization in residence at the A.I. Lab.  We
01100	have  had  a  number  of staff associates over the years, mostly from
01200	foreign countries. The enclosed letter from Japan is typical  of  the
01300	inquiries  we receive.  The purpose of the new program is to invite a
01400	few domestic inductrial organizations to submit  candidates  for  the
01500	staff associates positions.
01600	
01700		We  expect  to be able to have three to five staff associates
01800	in the laboratory at a time.  The associate would remain for about  a
01900	year and would be paid by his sponsoring organization.  He would be a
02000	regular  member  of  the  laboratory  staff,  working  on  automation
02100	problems.
02200	
02300		There  are,  of  course,  academic programs at Stanford which
02400	could also involve work at  the  Artificial  Intelligence  Lab.   The
02500	staff  associate  program  differs in that the selection criteria are
02600	different, the timing more flexible, and the expected time devoted to
02700	course  work  much  less.   We  believe that it is the most effective
02800	mechanism for us to learn from and help industrial  practitioners  of
02900	computer-aided advanced automation.
03000	
03100	
03200				Jerome A. Feldman
     

00100	IV. STAFF
00200	                     Brief Biographical Sketches
00300	
00400	Jerome A. Feldman, Principal Investigator: Early training  in physics
00500	and  mathematics;  Ph.D.  in  computer  science from Carnegie-Mellon,
00600	1964. Two years at M.I.T. Lincoln Laboratory. At Stanford since 1966,
00700	leader of Robotics group since 1968. currently Associate Professor of
00800	Computer  Science  and   Associate   Director   of   the   Artificial
00900	Intelligence  Lab.   Research interests include Robotics, associative
01000	processing, inductive inference, and Translator-writing systems.
01100	
01200	Thomas  O.   Binford, Associate Investigator: Received PhD in physics
01300	from the University of Wisconsin, 1965, working with strange particle
01400	reactions,  Regge  pole  and  group theory phenomenology.   Fulbright
01500	1965-66 Tata Institute of Fundamental Research, Bombay, India:  phase
01600	shift  analysis  of  strange  particle  systems;  theory  of unstable
01700	particles.  At MIT Artificial Intelligence Project  1967-70,  working
01800	on  representation  of  shape, region-based analysis system and other
01900	areas of computer vision, systems programming for LISP.  Lecturer  in
02000	computer  science  at  Stanford  University.   Research interests are
02100	computer vision, robotics, representation, and perception.
02200	
02300	Richard  P. C. Paul,  Associate Investigator:   Undergraduate work in
02400	Engineering Physics at McGill, Masters in Electrical Engineering  and
02500	PhD in Computer Science at Stanford  University.  From  1963  at  the
02600	Stanford  Linear  Accelerator  Center  as Electronic Engineer. At the
02700	Stanford A. I. Laboratory since 1966 and responsible for  manipulator
02800	systems  development  since 1968. Research interests include Robotics
02900	and digital servo systems.
03000	
03100	John  McCarthy:  BS in Math., Cal Tech, PhD in Math, Princeton, 1951.
03200	With Minsky,  organized  and  directed  the  Artificial  Intelligence
03300	Project  at MIT.  Joined Stanford as Professor of Computer Science in
03400	1962.   Organized and directs the  Stanford  Artificial  Intelligence
03500	Lab.   Research  interests  include  nearly all aspects of artificial
03600	intelligence,   timesharing   systems,   mathematical    theory    of
03700	computation, and representation theory.
03800	
03900	Victor  Scheinman:  Bachelor's  in  Electrical  Engineering,  M.I.T.,
04000	Engineer's in Mechanical Engineering from Stanford, 1969.    Employed
04100	as  a  design  engineer  at Stanford, M.I.T., and Raychem since 1969.
04200	Responsible for the design and construction  of  computer  controlled
04300	arms, as well as other Robotics equipment such as color-wheels, focus
04400	controls, pan-tilt heads, etc.
04500	
04600	Lester Earnest:   BS in  Electrical  Engineering,  Cal  Tech;  MS  in
04700	Electrical  Engineering,  MIT,  1960.     Two  years  at  MIT Lincoln
04800	Laboratory.  Seven years at Mitre  Corporation,  ending  as  Head  of
04900	Information  Systems Department.  At Stanford since 1965 as Executive
05000	Officer  and  Associate  Director  of  the  Artificial   Intelligence
05100	Laboratory,  Research  Computer  Scientist,  and Lecturer in Computer
05200	Science.  Responsible for administration and industrial liason.
05300	
05400	
05500	
05600	                          Curriculum Vitae
05700	
05800	                          JEROME A. FELDMAN
05900	
06000	                                1972
06100	
06200	
06300	                      Biographical Information:
06400	
06500	Born:  December 5, 1938 in Pittsburgh, Pennsylvania, U.S.A.
06600	Nationality: United States
06700	Marital Status:  Married, two children
06800	
06900	
07000	EDUCATION:
07100	
07200	B.A.	(Physics, with Distinction)	Rochester	1960
07300	M.A.	(Mathematics)			Pittsburgh	1961
07400	Ph.D.	(Mathematics, Computer Science) Carnegie-Mellon 1964
07500	
07600	
07700	HONORS AND SOCIETIES:
07800	
07900	Association for Computing Machinery
08000	American Association for the Advancement of Science
08100	National Lecturer, Association for Computing Machinery  1966
08200	Best Session Award, IEEE, August			1970
08300	Fulbright Lecturer, Hebrew University, Jerusalem	1970-71
08400	
08500	
08600	PROFESSIONAL EXPERIENCE:
08700	
08800	Engineer, Westinghouse Electric Corporation		1960-61
08900	Asst. Research Scientist, Carnegie-Mellon U.		1963-64
09000	Staff Member, MIT Lincoln Laboratory			1964-66
09100	Summer Lecturer, U. Pennsylvania			1966
09200	Summer Lecturer, U. Michigan				1967
09300	Asst. Prof., Computer Science, Stanford U.		1966-69
09400	Assoc. Prof., Computer Science, Stanford U.		1969-Present
09500	Visiting Prof. of Computer Science, Hebrew U.		1970-71
09600	Assoc. Dir., Artificial Intelligence Lab., Stanford U.	1972-Present
09700	
09800	
09900	
10000	EDITORIAL, ORGANIZATIONAL, AND CONSULTATION:
10100	
10200	Reviewer for Computing Reviews, Journal and
10300		Communications of the ACM, Information and
10400		Control, IEEE Computer Group, various Conferences
10500		and government agencies.
10600	
10700	Consultant for IBM, Systems Development Corp.,
10800		Martin-Marietta Corp., Lockheed Missiles and Space
10900		Corp., General Motors, National Institute of Health
11000	
11100	Editorial Board, Fundamental Studies in Computer
11200		Science, North-Holland Publishing Company
11300	
11400	Lecturer, ACM Professional Development Seminar in
11500		Time-Sharing, 1967
11600	
11700	Organizing Committee, Israel Alta Conference,
11800		Ashkelon, February 1971
11900	        NATO Conference on Software, Rome,Italy,1969
12000	        ACM Conf. on Very High Level Languages, 1974
     

00100	                            PUBLICATIONS
00200	
00300	                          Jerome A. Feldman
00400	
00500	
00600	"Some   Regularity  Theorems  on  Kernel  Methods  of  Summation  for
00700	Functions of a Complex Variable," Masters' Thesis, U. of  Pittsburgh,
00800	1961.
00900	
01000	"A  Formal  Semantics  for  Computer   Oriented   Languages",   Ph.D.
01100	Dissertation, May 1964, Carnegie-Mellon University.
01200	
01300	"Aspects of Associative Processing", TN-1965-13, Lincoln  Laboratory,
01400	Massachusetts Institute of Technology, Lexington, Massachusetts.
01500	
01600	"A Formal Semantics for Programming Languages",  Proceedings  of  the
01700	International  Federation  of  Information  Processing Societies, May
01800	1965.
01900	
02000	
02100	"A  Formal Semantics for Computer Languages and its Applications in a
02200	Compiler-Compiler", Communications of the Association  for  Computing
02300	Machinery,  Vol.  9,  No. 1, January 1966, and reprinted in "COMPUTER
02400	COMPILER TECHNIQUES", Auerbach Publishers, 1971.
02500	
02600	"An   Associative   Processing   System   for   Conventional  Digital
02700	Computers", (with P.D. Rovner), TN-1967-19, Lincoln Laboratory,  MIT,
02800	Lexington, Mass.
02900	
03000	
03100	"The Compiler-Compiler  in  a  Time-Sharing  Environment",  (with  J.
03200	Curry), Summer Lectures on Advanced Computer Organization, University
03300	of Michigan, June 1967.  Also Bit Dropper, September 1967.
03400	
03500	"Translator  Writing  Systems",  (with  D.  Gries),  CS  69, Computer
03600	Science Department, Stanford University, June 1967.
03700	
03800	"First  Thoughts  on  Grammatical  Inference", A.I. Memo 55, Stanford
03900	University, August 1967.
04000	
04100	"Translator  Writing Systems", (with D. Gries), Communications of the
04200	Association for Computing Machinery, Vol. 11, No. 3, March 1968,  and
04300	reprinted  in  "Computer  Compiler  Techniques", Auerbach Publishers,
04400	1971.
04500	
04600	"The  Leap  Language and Data Structure", (with P.D. Rovner), Lincoln
04700	Laboratory  Memorandum,  January  1968.   Also  in  reduced  form  in
04800	Proceedings of the International Federation of Information Processing
04900	Societies, August 1968.
05000	
05100	"Grammatical Inference and Grammatical Complexity", (with others), CS
05200	125, Stanford  University,  Computer  Science  Department,  Stanford,
05300	California, May 1969.
05400	
05500	"An Algol-based Associative Language", (with P.D. Rovner), A.I.  Memo
05600	66,  Stanford University, 1968.  Also Communications of the ACM, Vol.
05700	12, No. 8 August 1969, pp. 439-449.  Reprinted  in,  INTRODUCTION  TO
05800	INFORMATION SCIENCE (T. Saracevic, Ed.) Bowker, 1971.
05900	
06000	"The  Stanford  Hand-Eye  Project",  (with   others),   Proc.   First
06100	International  Congress on Artificial Intelligence, Washington, D.C.,
06200	May 1969.
06300	
06400	"The  Computer  Description  of  Simply Described Scenes", (with R.P.
06500	Paul and G. Falk), A.I.  Memo  101,  Stanford  University.  Also  in,
06600	PERTINENT  CONCEPTS  IN  COMPUTER  GRAPHICS,  (J.  Nievergelt  and M.
06700	Faiman, Eds.), U.of Illinois Press, 1969.
06800	
06900	"Machine  Intelligence",  Review  of  Numbers  I.III  of  the Machine
07000	Intelligence Series, Information and Control, 14, 490-492, 1969.
07100	
07200	
07300	"Towards  Automatic  Programming",  Preprints  of  the  NATO Software
07400	Engineering Conference, Rome, Italy, 1969.
07500	
07600	"Getting  a  Computer  to  See  Simple Scenes", IEEE Student Journal,
07700	September 1970.
07800	
07900	"A  Survey of Grammatical Inference", (with A. Biermann), Proceedings
08000	of International Congress on Pattern  Recogniton,  Honolulu,  January
08100	1971.  also  in  S.  Watanbe  (Ed.) FRONTIERS OF PATTERN RECOGNITION,
08200	Academic Press, 1972.
08300	
08400	"Hebrew University Production Language", (with S. Tsur and D. Lehman)
08500	Hebrew University, Computer Science Department, February 1971.
08600	
08700	"A  Way  of  Looking  at Things", Hebrew University, Computer Science
08800	Department, February 1971.
08900	
09000	"A  Laboratory  for  Hand-Eye  Research",  (with others), Proceedings
09100	IFIPS International Conference, Lubljana, Yugoslavia, August 1971.
09200	
09300	"System Support for the Stanford Hand-Eye Project", (with R. Sproull)
09400	Proceedings Second International Congress on Artificial Intelligence,
09500	London, September 1971, p. 183-189.
09600	
09700	"The  Use  of  Vision  and Manipulation to Solve the Instant Insanity
09800	Puzzle", (with others), Proceedings Second  International  Conference
09900	on Artificial Intelligence, London, September 1971, p. 359-364.
10000	
10100	"Some Decidability Results on Grammatical Inference and  Complexity",
10200	Information and Control, Vol. 20, No. 3, April 1972, p. 244-262.
10300	
10400	"On The Synthesis of Finite-State  Machines  from  Samples  of  their
10500	Behavior",  (with  A. Biermann), IEEE Transactions on Computers, June
10600	1972, Vol. C-21, No. 6, p. 592-596.
10700	
10800	"Automatic   Programming",  CS  255,  Stanford  University,  Computer
10900	Science Department, Stanford, California, February 1972.
11000	
11100	"Total  Complexity  and  the  Inference  of  Best Programs", (with P.
11200	Shields), CS 253, Stanford  University,  April  1972.   Submitted  to
11300	Mathematical Systems Theory.
11400	
11500	"Recent Developments in SAIL-An Algol Based Language for Artificial 
11600	Intelligence", (with others).  CS 308, Stanford University, August 1972.
11700	Proc. Fall Joint Computer Conference,Anaheim, Cal.,1972,p.1193-1202.
11800	
11900	"Associative Languages" to appear in The Encyclopedia
12000	of Computer Science and Technology, A. Ralston, Ed.
12100	
12200	"A Semantics-Based Decision Theoretic Region Analyzer" (with Y.Yakimovsky)
12300	Submitted to Third IJCAI, February,1973
12400	
     

00100	                 MAJOR PROGRAMMING SYSTEMS DEVELOPED
00200	
00300	
00400	
00500	TRANSLATOR WRITING SYSTEMS
00600	
00700		FSL:  Additional reference
00800		
00900		Itturriaga, R. et.al., "Techniques and Advantages of Using the
01000		formal compiler writing system FSL to implement a Formula Algol
01100		Compiler", Proc. AFIPS Conference 1966, pp. 241-252.
01200	
01300		VITAL:  Additional Reference
01400	
01500		Mondschein, L.F. "VITAL compiler-compiler System Reference Manual",
01600		TN-1967-12.  M.I.T., Lincoln Lab., February 1967.
01700	
01800	
01900	ASSOCIATIVE LANGUAGE SYSTEMS
02000	
02100		LEAP:  Additional reference
02200	
02300		Rovner, P., "The LEAP Users Manual", Mem. 23L-0009, M.I.T., Lincoln
02400		Lab., December 1968.
02500	
02600		Swinehart, D. and R. Sproull, "SAIL Users Manual", Operating Note
02700		57.1; Stanford A.I. Project, April 1970.
02800	
02900	
03000	COOPERATING SEQUENTIAL PROCESSES
03100	
03200		HAND-EYE SYSTEM:  Additional reference
03300	
03400		Pingle, K., "System Manual for Hand-Eye Hackers", Internal
03500		Memorandum, Stanford A.I. Project, June 1971.
     

00100	DOCTORAL STUDENTS
00200	
00300	
00400	NAME	      DEPT.          TITLE/TOPIC	   FINAL ORAL	CURRENTLY
00500	
00600	F.J. Hilbing  Industrial     Strategies for 	   1968		U.S.A.F.
00700		      Engineering    Paging a Large	   		Academy
00800		    		     Associative Data Base		
00900	
01000	J.J. Horning  Computer	     A Study of Grammati-  1969		U. of
01100		      Science	     cal Inference			Toronto
01200	
01300	L.F. Morris   Computer	     Semantic Models and   1969		Syracuse U.
01400		      Science	     Compiler Correctness		
01500	
01600	G. Falk	      Computer	     Computer Interpreta-  1970		Rutgers U.
01700		      Science	     tion of Imperfect 			
01800				     Line Data as a Three-
01900				     Dimensional Scene
02000	
02100	I. Sobel      Electrical     Camera Models and	   1970		Haifa 
02200		      Engineering    Machine Perception			Technion
02300	
02400	J.Tenenbaum   Electrical     Accommodation in	   1970		Stanford
02500		      Engineering    Computer Vision			Research
02600									Institute
02700	
02800	J.D.Becker    Computer	     An Information	   1970		Bolt,
02900		      Science	     Processing Model of		Beranek, &
03000				     Intermediate Level			Newman
03100				     Cognition
03200	
03300	R. Paul	      Computer	     Studies with a	   1972		Stanford U.,
03400		      Science	     Computer Controlled		A.I. Lab.
03500				     Arm
03600	
03700	D.Swinehart   Computer	     A One-Level Language  1972		Stanford U.,
03800		      Science	     System				A.I. Lab.
03900	
04000	A. Gill	      Electrical     Visual Feedback Con-  1972		Israel
04100		      Engineering    trol of a Mechanical		Defense
04200				     Arm				Establshmnt.
04300	
04400	D. Levine     Computer	     Automated Error	   1972		Stanford U.
04500		      Science	     Correction of			IMSSS
04600				     German Sentences
04700	
04800	G. Grape      Computer	     Computer Vision	   1973		
04900		      Science	     Through Sequential
05000				     Abstraction
05100	
05200	J. Gips	      Computer	     Structure of	   1973
05300		      Science	     Pictures Applied to
05400				     Art and Vision
05500	
05600	S.Ganapathy   Computer	     Analysis of Simple    1973
05700		      Science	     Scenes Using Multiple
05800				     Views
05900	
06000	J. Low	      Computer	     Optimization of	   1973
06100		      Science	     Data Structures for
06200				     Associations
06300	
06400	Y.Yakimovsky  Computer	     Knowledge-based,	   1973
06500		      Science	     Decision Theoretic
06600				     Region Analysis of
06700				     Pictures
06800	
     

00100	                         UNIVERSITY SERVICE
00200	
00300	
00400	
00500	Freshman Seminar, "The Information Revolution"		1967-68
00600	
00700	Faculty Senate						1969-70
00800	
00900	Presidents Low-Cost Housing Committee			1968-69
01000	
01100	Steering Committee, Junior Faculty Forum		1968-69
01200	
01300	SWOPSI Seminar, "Computers and Society"			1969-70
01400	
01500	Freshman Adviser					1971-72
01600	
01700	Committee on Linguistics				1971-72
01800	
01900	Lecturer, NSF Summer Program				1971
02000	
02100	Faculty Adviser, Student Chapter, 
02200	   Association for Computing Machines			1966-68
02300	
02400	Lecturer, Campus Alumni Conference - May		1970
02500	
02600	Departmental Undergraduate Adviser			1972-73
02700	
     

00100	Name:  RICHARD P.C. PAUL
00200	Born:	June 16, 1936 in Sydney Australia.
00300	Nationality: United States
00400	Marital Status: Married, two children.
00500	
00600	EDUCATION:
00700	B.Eng.	(Engineering Physics, with Honour)	McGill	  1963
00800	M.Sc.	(Electrical Engineering)		Stanford  1968
00900	Ph.D.	(Computer Science)			Stanford  l972
01000	
01100	PROFESSIONAL EXPERIENCE:
01200	Electronic Engineer, Stanford Linear Accelerator Center	  1963-67
01300	Computer Systems Engineer, Stanford A.I. Laboratory	  1967-68
01400	Research Programmer, Stanford A.I. Laboratory		  1969-72
01500	Research Associate, Stanford A.I. Laboratory		  1972-present
01600	
01700	PUBLICATIONS:
01800	
01900	"A  Multi-pulse  Generator  for  Testing  a  Radar  Beacon", Canadian
02000	Engineering Journal, 1962.
02100	
02200	With G.  Falk and J. Feldman, "The Computer Representation of  Simply
02300	Described  Scenes"  Memo  AIM-101,  Computer  Science Dept., Stanford
02400	University, Stanford, California.
02500	
02600	With  Feldman et al, "The Use of Vision and Manipulation to Solve the
02700	Instant Insanity Puzzle", Proc. Second International Joint Conference
02800	on Artificial Intelligence.
02900	
03000	"Trajectory  Control  of  a Computer Arm", Proc. Second International
03100	Joint Conference on Artificial Intelligence, 1971.
03200	
03300	"Modelling  Trajectory  Calculation  and  Servoing  of   a   Computer
03400	Controlled  Arm",  PhD.  Thesis,  Computer  Science  Dept.,  Stanford
03500	University.
     

00100	Name:  THOMAS O. BINFORD
00200	Born:  April 13,1936, Jefferson Twp, Pennsylvania
00300	Nationality: USA
00400	Marital Status:divorced
00500	
00600	EDUCATION:
00700	BS	physics		Pennsylvania State University	1957
00800	PhD 	physics		University of Wisconsin		1965
00900	
01000	CURRENT RESEARCH:
01100	Artificial Intelligence Laboratory, Stanford University
01200		laser depth ranging system
01300		representation of shape
01400		recognition of complex objects
01500		efficient method for proximity in n-dimensions
01600		color region analysis
01700		analysis of texture
01800		sensor study
01900	
02000	
02100	Artificial Intelligence Laboratory, MIT  1967-1970
02200		Topological region analysis
02300		line finder using sequential decision 
02400		software for a visual experimentation
02500		recognition of parallelipipeds from incomplete line drawings
02600		two-dimensional shape recognition
02700		line verification
02800		line prediction
02900	
03000	POST-DOCTORAL RESEARCH:
03100	Fulbright grant, Tata Institute of Fundamental Research,Bombay India
03200	partial wave analysis of hyperon production by pions;
03300	Regge-pole analysis of Sigma plus production by pions;
03400	theory of unstable particles and symmetry principles
03500	
03600	PhD
03700	Strange particle production by pions near 1 Bev/c.
03800	Two new experimental equalities among cross sections;
03900	test of charge independence in hyperon production;
04000	showed adequacy of Regge-pole theory to explain high-energy cross sections;
04100	
04200	
04300	PUBLICATIONS:
04400	
04500	"Structured Descriptions of Complex Objects",R.K.Nevatia and T.O.Binford
04600	 Third Int Conf on AI, February, 1973.
04700	Stanford, Calif, 1973.
04800	
04900	"Computer Vision", T.O.Binford and J.M.Tenenbaum, Computer, IEEE,
05000	April 1973.
05100	
05200	"Sensor Systems for  Manipulation",  Conference  on  Remotely  Manned
05300	Systems, JPL, Pasadena, Calif, Sept 1972.
05400	
05500	"Visual  Perception  by  Computer",  Invited  paper  at  IEEE Systems
05600	Science and Cybernetics, Miami, Dec 1971.
05700	
05800	With G. Agin, "Representation and Description of Complex Objects", To
05900	be published.
06000	
06100	With Feldman, et al, "The Use of Vision and Manipulation to Solve the
06200	Instant Insanity Puzzle", Proc. Second International Joint Conference
06300	on Artificial Intelligence.
06400	
06500	With Tenenbaum, et al, "A laboratory for Hand-Eye Research",
06600	IFIP proceedings, August 1971.
06700	
06800	"The Vision Laboratory-Part One", MIT AI memo 203.
06900	
07000	"The TOPOLOGIST: A Region-Oriented System", (in draft form)
07100	
07200	With A. Herskovits, "On Boundary Detection", MIT AI memo 183.
07300	
07400	"Display Functions in LISP", MIT AI memo 182.
07500	
07600	With Desai, "High  Energy Elastic Scattering at Low Momentum Transfers", Physical
07700	Review 138,B1167.
07800	
07900	With others, "Experimental Check of Some SU(6) Cross Section Equalities", Physical
08000	Review Letters 14,715.
08100	
08200	With others, "Hyperon Production in Pion Interactions", Physical Review (1968).
08300	
08400	"Triangle  Inequality  in  Associated  Production",  Physical  Review
08500	(1968).
08600							     + - o
08700	With Anderson, et al, "CP-Nonconserving Decay 	K ← π π π ", Physical
08800							1
08900	Review Letters 14,475.
09000						     o   +  -  o
09100	With Stern, et al, "Absolute Decay Rate for K → π  π  π  and the
09200						     2
09300						     2
09400	|DI|=1/2 Rule", Physical Review Letters 12,459.
09500	
09600	With  Lind,  et  al,  "Experimental  Investigation of V-A in Leptonic
09700	Lambda Decay", Phys Rev 135,B1483.
09800	
09900	
10000	DOCTORAL STUDENTS:
10100	
10200	G.J.Agin	Description and Representation	1972
10300			of Complex Objects
10400	
10500	R.K.Nevatia	Recognition of Complex Objects	1973
10600	
10700	Ruzena Bajcsy (under Prof J. McCarthy)
10800		Computer Identification of Textured	1972
10900			Visual Scenes
11000	
11100	T. Garvey	Perceptual Problem Solving	1973
     

00100	
00200	V. COMPUTING FACILITIES
00300	
00400	The Laboratory operates a display-oriented  timesharing  system  with
00500	facilities for real-time control of mechanical arms and other special
00600	devices.  This system is connected to the ARPA computer network.
00700	
00800	Central Processor:   Digital Equipment Corporation PDP-10
00900	
01000	Real-time Processor: Digital Equipment Corporation PDP-6
01100	
01200	Network Processor:   BBN IMP (Honeywell DDP-516)
01300	
01400	Primary Store:       65K words of 1.7 microsecond DEC Core
01500		             65K words of 1 microsecond Ampex Core
01600	                     131K words of 1.6 microsecond Ampex Core
01700	
01800	Swapping Store:      Librascope disk (5 million words, 22 million
01900	                     bits/second transfer rate)
02000	
02100	File Store:          IBM 3330 disc file, 6 spindles (leased)
02200	
02300	Peripherals:         4 DECtape drives, 2 mag tape drives, line printer,
02400		             Calcomp plotter, Xerox Graphics Printer
02500	
02600	Terminals:           58 TV displays, 6 III displays, 3 IMLAC displays,
02700		             1 ARDS display, 15 Teletype terminals
02800	
02900	Special  Equipment:  Audio  input  and  output  systems, hand-eye
03000	                     equipment (2 TV cameras, 3 arms), remote-
03100	                     controlled cart
03200	
03300	Nearly all of this equipment  was  acquired  with  support  from  the
03400	Advanced   Research   Projects  Agency  for  research  in  artificial
03500	intelligence.
     

00100	VI. BUDGET
00200	
00300	
00400	Research in Robotics and Automation at the Stanford Artificial Intelligence
00500	Laboratory has been supported for several years by the Advanced Research
00600	Projects Agency of the Department of Defense.  This support has supplied
00700	most of the necessary capital equipment and continues to support some of
00800	the basic work in this area.  The budget requirements for our "proof of
00900	concept" proposal following this initial one year proposal will
01000	depend on the nature of ARPA support in the future.
01100	
01200	
01300	
02000	                 ADVANCED AUTOMATION DEVELOPMENT
02100			 RESEARCH GRANT PROPOSAL BUDGET
02200			 ONE YEAR BEGINNING SEPTEMBER 1, 1973
02300	
02400	
02500	BUDGET CATEGORY
02600							9/1/73-9/1/74
02700	__________________________________________________________________
02800	A. SALARIES & WAGES:
02900	
03000	   1. Senior personnel:
03100	
03200	      a. Principal Investigator
03300	         J. Feldman, Associate
03400	          Professor, (2 mos. FTE)		$ 3,624
03500	
03600	      b. Faculty Associate
03700	         J. McCarthy, Professor  		  -----
03800	
03900	   2. Other Personnel:
04000	
04100	      a. Research Computer Scientist:
04200	
04300	         L. Earnest, (2 mos. FTE)            	$ 4,584
04400	
04500	      b. Research Associates:
04600	
04700	         T. Binford, (6 mos. FTE)           	$ 9,300
04800	
04900	         L. Paul, (6 mos. FTE)			$ 8,820
05000	
05100	      c. Non-Fac. Professionals (others):
05200	
05300	         ------, Research Programmer,
05400	         (12 mos. FTE)				$12,000
05500	
05600	         V. scheinman, Design Engineer,
05700	         (6 mos. FTE)				$ 8,280
05800	
05900	      d. Grad Students:
06000	
06100	         Student Research Assts.:
06200	
06300	          (3) 1/2 time Acad. Yr.,
06400	           (13.5 mos. FTE) 			$ 9,180
06500	
06600	          (3) 100% Summer Qtr.,
06700	 	   (9 mos. FTE)				$ 6,750
06800	
06900	      e. Secretarial-Clerical:
07000	
07100	 	  (1) Secretary, (12 mos. FTE)		$ 7,800
07200	
07300	      f. Technical:
07400	
07500	          (1) Electronics Tech.,
07600	 	   (12 mos. FTE)			$ 9,600
07700	
07800	      g. Reserve for Salary Increases
07900	         @ 5% per year				$ 3,997
08000							_______
08100	
08200	         TOTAL SALARIES & WAGES			$83,935
08300	
08400	B. FRINGE BENEFITS:
08500	
08600	   17.0% 9/1/73 to 8/31/74			$14,269
08700							_______
08800	
08900	   Total Salaries, Wages and
09000	   Fringe Benefits (A + B)			$98,204
09100	
09200	C. EXPENDABLE SUPPLIES AND EQUIP.:
09300	
09400	   (e.g. Office Supplies, Xeroxing,
09500	         Postage, Freight, Consulting,
09600	         Honorariums) 				$ 2,251
09700	
09800	D. CAPITAL EQUIPMENT:				$ 5,000
09900	
10000	E. TRAVEL:
10100	
10200	   1. Domestic
10300	       Local            $  600
10400	       Industry Visits	$3,600
10500				______
10600	   Total Travel					$ 4,200
10700	
10800	F. PUBLICATION COSTS:				$   400
10900	
11000	G. OTHER COSTS:
11100	
11200	   1. Communications (Telephones)   $ 1,000    
11300	   
11400	   2. Equipment Rental (Disk)       $25,000     
11500	            			    _______     
11600	   Total Other Costs				$26,000
11700	                                               ________        
11800	H. TOTAL DIRECT COSTS (A through G)	       $136,055
11900	
12000	I. INDIRECT COSTS:
12100	
12200	   1. On Campus 47% of Net Total
12300	      Direct Costs (H)				$63,945
12400							_______
12500	
12600	J. TOTAL COSTS (G + I)			       $200,000
12700							_______
12800							_______
     

00100	VII.  REFERENCES
00200	
00300	[Alexander]  Tom  Alexander,  "The  Hard  Road  to  Soft Automation",
00400	
00500	[Anderson 1972] R. Anderson,"Programmable Automation, The Future
00600	of Computers in Manufacturing", Datamation, Dec 1972.
00700	
00800	[Agin] G. Agin, "Description and Representation of  Curved  Objects",
00900	Artificial Intelligence Laboratory, Stanford University, AIM-134,
01000	October 1972.
01100	
01200	
01300	[Bajcsy 1972] "Computer Identification of Visual Texture" 
01400	AIM-180,Artificial Intelligence Laboratory, Stanford University,
01500	October 1972.
01600	
01700	[Baumgart 1972a] B. Baumgart, "GEOMED - A Geometric Editor", May 1972.
01800	SAILON-68,Artificial Intelligence Lab, Stanford University,
01900	
02000	[Baumgart 1972b] Baumgart, Bruce G., WINGED EDGE POLYHEDRON REPRESENTATION, 
02100	AIM 179,Artificial Intelligence Lab, Stanford University,October 1972.
02200	
02300	[Binford 1972]"Sensor Systems for  Manipulation",  Conference  on  Remotely
02400	Manned Systems, JPL, Pasadena, Calif, Sept 1972.
02500	
02600	[Binford 1971] "Visual  Perception  by  Computer",  Invited  paper IEEE
02700	Systems Science and Cybernetics, Miami, Dec 1971.
02800	
02900	[Binford 1970] T.O.Binford, "Ranging by Laser", Internal Report,
03000	Artificial Intelligence Lab, Stanford University, Oct 1970.
03100